System and method for instant VoIP messaging

ABSTRACT

There is provided an instant voice messaging system (and method) for delivering instant messages over a packet-switched network, the system comprising: a client connected to the network, the client selecting one or more recipients, generating an instant voice message therefor, and transmitting the selected recipients and the instant voice message therefor over the network; and a server connected to the network, the server receiving the selected recipients and the instant voice message therefor, and delivering the instant voice message to the selected recipients over the network, the selected recipients being enabled to audibly play the instant voice message.

BACKGROUND OF THE INVENTION

1. Technical Field of the Invention

The present invention generally relates to Internet telephony (IPtelephony). More particularly, the present invention is directed to asystem and method for enabling local and global instant VoIP messagingover an IP network, such as the Internet, with PSTN support.

2. Description of the Prior Art

Traditional telephony is based on a public switched telephone network(i.e., “PSTN”). In the PSTN, a telephone terminal is electricallyconnected to a conventional or legacy switch. The telephone terminal andthe legacy switch communicate via a proprietary protocol, which may bedifferent depending on the vendor of the legacy switch. Circuitswitching provides a communication path (i.e., dedicated circuit) for atelephone call from the telephone terminal to another device over thePSTN, including another telephone terminal. During the telephone call,voice communication takes place over that communication path.

An alternative to the PSTN is Voice over Internet Protocol (i.e.,“VoIP”), also known as IP telephony or Internet telephony. In the IPtelephony, a VoIP terminal device is connected to a packet-switchednetwork (e.g., Internet) and voice communication from the VoIP terminaldevice is digitized, packetized and transmitted over the packet-switchednetwork to a destination VoIP terminal device, which reconstructs thepackets and audibly plays, stores or otherwise processes thetransmission. The VoIP terminal device may be a VoIP telephone or ageneral-purpose personal computer (PC) enabled for IP telephony. Morespecifically, the PC is programmed with the software and equipped withaudio input/output devices (e.g., a combination of microphone andspeaker or a headset) to serve as a VoIP terminal device. The PC soenabled and equipped will herein be referred to as a VoIP terminaldevice or a VoIP softphone.

FIG. 1 is an illustrative example of a prior art IP telephony system100. The IP telephony system 100 comprises a packet-switched IP network102, such as the Internet, which transmits VoIP traffic from and to aplurality of terminal devices 104, 106 and 110. Terminal device 104 is aVoIP softphone that is enabled for IP telephony over the network 102.Terminal device 106 is a VoIP telephone, which is connected to thenetwork 102 via a softswitch 108. The VoIP softswitch 108 is disposed onthe packet-switched network (e.g., Internet) 102 between an originationterminal device (such as VoIP softphone 104) and a destination terminaldevice (such as VoIP telephone 106), and routes packets over thepacket-switched IP network 102. The softswitch 108 may also manage andperform administrative functions for the terminal device or devices(e.g., VoIP telephone 106) to which it is connected. Whether theterminal device is a VoIP softphone 104 or a VoIP telephone 106, theterminal device is connected to the IP network 102 via a networkingstandard such as Ethernet, Bluetooth, IEEE 1394 (also known as“Firewire”), IEEE 802.11 (also known as “WiFi”), or networking overserial communication channels such as the Universal Serial Bus (i.e.,“USB”). Data communication over the network then takes place using aconnection protocol, e.g., transfer control protocol/Internet protocol(i.e., “TCP/IP”).

Further regarding FIG. 1, terminal device 110 is a legacy telephone thatis connected to a legacy switch 112 for (circuit-switched) voicecommunications over the PSTN 116 with other terminal devices. A mediagateway 114 may be provided between the legacy switch 112 and thepacket-switched network 102 to enable IP telephony between the legacytelephone 110 and a VoIP terminal device, such as a VoIP softphone 104or VoIP telephone 106. More specifically, the media gateway 114 convertsthe audio signal carried over PSTN to packets carried over thepacket-switched IP network 102. In addition, a media gateway 118 may bedisposed over the PSTN 116 and connected to a softswitch 120 to convertthe audio signal from the legacy telephone 110 to packets routed overthe IP network 102 via the softswitch 120.

Voice messaging in both the VoIP and PSTN is known. More specifically,the foregoing systems may be provided with a facility to allow users toleave voice messages for recipients, which is a feature that is familiarto anyone who uses a telephone. Conventionally, leaving a voice messageinvolves dialing the recipient's telephone number (often without knowingwhether the recipient will answer), waiting for the connection to beestablished, speaking to an operator or navigating through a menu ofoptions, listening to a greeting message, and recording the message forlater pickup by the recipient. In that message, the user must typicallyidentify himself or herself in order for the recipient to return thecall.

Instant text messaging is likewise known. More specifically, a user isprovided with a client terminal, which is typically a general-purpose PCprogrammed with instant text messaging software and in datacommunication over an IP network with an instant text-messaging server.The instant text-messaging server presents the user, via the clientterminal, with a list of persons who are currently “online” and ready toreceive text messages on their own client terminals. The user then usesthe client terminal to select one or more persons to whom the messagewill be sent and types in a text message. The text message is sentimmediately via the text-messaging server to the selected one or morepersons and is displayed on their respective client terminals.

However, notwithstanding the foregoing advances in the VoIP/PSTN voicecommunication and voice/text messaging, there is still a need in the artfor providing a system and method for providing instant VoIP messagingover an IP network. More particularly, there is a need in the art forproviding local and global instant voice messaging over VoIP with PSTNsupport.

SUMMARY OF THE INVENTION

The present invention is directed to a system and method for enablinglocal and global instant VoIP messaging over an IP network, such as theInternet.

According to an embodiment of the present invention, there is providedan instant voice messaging system for delivering instant messages over apacket-switched network, the system comprising: a client connected tothe network, the client selecting one or more recipients, generating aninstant voice message therefor, and transmitting the selected recipientsand the instant voice message therefor over the network; and a serverconnected to the network, the server receiving the selected recipientsand the instant voice message therefor, and delivering the instant voicemessage to the selected recipients over the network, the selectedrecipients being enabled to audibly play the instant voice message.

According to another embodiment of the present invention, there isprovided an instant voice messaging system for delivering instantmessages over a packet-switched network enabling public switchedtelephone network (PSTN) support, the system comprising: a PSTNtelephone connected to the network for providing input audio; a clientconnected to the network, the client selecting one or more recipients,generating an instant voice message therefor using the input audioprovided by the PSTN telephone, and transmitting the selected recipientsand the instant voice message therefor over the network; a serverconnected to the network, the server receiving the selected recipientsand the instant voice message therefor, and delivering the instant voicemessage to the selected recipients over the network, the selectedrecipients being enabled to audibly play the instant voice message.

According to a further embodiment of the present invention, there isprovided an instant voice messaging system for delivering instantmessages over a packet-switched network, the system comprising: avoice-over-internet-protocol (VoIP) telephone connected to the networkfor providing input audio; a client connected to the network, the clientselecting one or more recipients, generating an instant voice messagetherefor using the input audio provided by the VoIP telephone, andtransmitting the selected recipients and the instant voice messagetherefor over the network; a server connected to the network, the serverreceiving the selected recipients and the instant voice messagetherefor, and delivering the instant voice message to the selectedrecipients over the network, the selected recipients being enabled toaudibly play the instant voice message.

According to still another embodiment of the present invention, there isprovided an instant voice messaging system for delivering instantmessages over a plurality of packet-switched networks, the systemcomprising: a client connected to a local network, the client selectingone or more external recipients connected to an external network outsidethe local network, generating an instant voice message therefor, andtransmitting the selected recipients and the instant voice messagetherefor over the local network and the external network; and a serverconnected to the external network, the server receiving the selectedrecipients and the instant voice message therefor, and delivering theinstant voice message to the selected recipients over the externalnetwork, the selected recipients being enabled to audibly play theinstant voice message.

According to yet another embodiment of the present invention, there isprovided an instant voice messaging system for delivering instantmessages over a plurality of packet-switched networks enabling publicswitched telephone network (PSTN) support, the system comprising: a PSTNtelephone connected to a local network for providing input audio; aclient connected to the local network, the client selecting one or moreexternal recipients connected to an external network outside the localnetwork, generating an instant voice message therefor using the inputaudio provided by the PSTN telephone, and transmitting the selectedrecipients and the instant voice message therefor over the local networkand the external network; a server connected to the external network,the server receiving the selected recipients and the instant voicemessage therefor, and delivering the instant voice message to theselected recipients over the external network, the selected recipientsbeing enabled to audibly play the instant voice message.

According to yet a further embodiment of the present invention, there isprovided an instant voice messaging system for delivering instantmessages over a plurality of packet-switched networks, the systemcomprising: a voice-over-internet-protocol (VoIP) telephone connected toa local network for providing input audio; a client connected to thelocal network, the client selecting one or more external recipientsconnected to an external network outside the local network, generatingan instant voice message therefor using the input audio provided by theVoIP telephone, and transmitting the selected recipients and the instantvoice message therefor over the local network and the external network;an server connected to the external network, the external serverreceiving the selected recipients and the instant voice messagetherefor, and delivering the instant voice message to the selectedrecipients over the external network, the selected recipients beingenabled to audibly play the instant voice message.

According to still a further embodiment of the present invention, thereis provided an instant voice messaging system for delivering instantmessages over a plurality of packet-switched networks, the systemcomprising: a client connected to an external network, the clientselecting one or more recipients connected to a local network,generating an instant voice message therefor, and transmitting theselected recipients and the instant voice message therefor over theexternal network; an external server system connected to the externalnetwork, the external server system receiving the selected recipientsand the instant voice message, and routing the selected recipients andthe instant voice message over the external network and the localnetwork; a local server connected to the local network, the local serverreceiving the selected recipients and the instant voice messagetherefor, and delivering the instant voice message to the selectedrecipients over the local network, the selected recipients being enabledto audibly play the instant voice message.

According to an embodiment of the present invention, there is provided amethod for instant voice messaging over a packet-switched network, themethod comprising: selecting one or more recipients for instant voicemessaging at a client; generating an instant voice message for theselected recipients at the client; transmitting the selected recipientsand the instant voice message therefor over the network from the clientto a server; receiving the selected recipients and the instant voicemessage therefor at the server; delivering the instant voice messagefrom the server to the selected recipients over the network; and audiblyplaying the instant voice message at the selected recipients.

According to another embodiment of the present invention, there isprovided a method for instant voice messaging over a packet-switchednetwork enabling public switched telephone network (PSTN) support, themethod comprising: providing input audio via a PSTN telephone connectedover the network; selecting one or more recipients for instant voicemessaging at a client; generating an instant voice message using theinput audio from the PSTN telephone for the selected recipients at theclient; transmitting the selected recipients and the instant voicemessage therefor over the network from the client to a server; receivingthe selected recipients and the instant voice message therefor at theserver; delivering the instant voice message from the server to theselected recipients over the network; and audibly playing the instantvoice message at the selected recipients.

According to a further embodiment of the present invention, there isprovided a method for instant voice messaging over a packet-switchednetwork, the method comprising: providing input audio via avoice-over-internet-protocol (VoIP) telephone connected over thenetwork; selecting one or more recipients for instant voice messaging ata client; generating an instant voice message using the input audio fromthe VoIP telephone for the selected recipients at the client;transmitting the selected recipients and the instant voice messagetherefor over the network from the client to a server; receiving theselected recipients and the instant voice message therefor at theserver; delivering the instant voice message from the server to theselected recipients over the network; and audibly playing the instantvoice message at the selected recipients.

According to still another embodiment of the present invention, there isprovided a method for instant voice messaging over a plurality ofpacket-switched networks, the method comprising: selecting one or moreexternal recipients for instant voice messaging at a client connected toa local network, the one or more external recipients connected to anexternal network outside the local network; generating an instant voicemessage for the selected external recipients at the client; transmittingthe selected external recipients and the instant voice message thereforover the local network and the external network; receiving the selectedexternal recipients and the instant voice message therefor at anexternal server connected to the external network; delivering theinstant voice message to the selected external recipients over theexternal network; and audibly playing the instant voice message at theselected external recipients.

According to yet another embodiment of the present invention, there isprovided a method for instant voice messaging system over a plurality ofpacket-switched networks enabling public switched telephone network(PSTN) support, the method comprising: providing input audio via a PSTNtelephone connected to a local network; selecting one or more externalrecipients for instant voice messaging at a client, the one or moreexternal recipients connected to an external network outside the localnetwork; generating an instant voice message for the one or moreexternal recipients using the input audio provided by the PSTNtelephone; transmitting the selected recipients and the instant voicemessage therefor over the local network and the external network;receiving the selected recipients and the instant voice message thereforat a server connected to the external network; delivering the instantvoice message to the selected recipients from the server over theexternal network; and audibly playing the instant voice message at theselected recipients.

According to still a further embodiment of the present invention, thereis provided a method for instant voice messaging system over a pluralityof packet-switched networks, the method comprising: providing inputaudio via a voice-over-internet-protocol (VoIP) telephone connected to alocal network; selecting one or more external recipients for instantvoice messaging at a client, the one or more external recipientsconnected to an external network outside the local network; generatingan instant voice message for the one or more external recipients usingthe input audio provided by the VoIP telephone; transmitting theselected recipients and the instant voice message therefor over thelocal network and the external network; receiving the selectedrecipients and the instant voice message therefor at a server connectedto the external network; delivering the instant voice message to theselected recipients from the server over the external network; andaudibly playing the instant voice message at the selected recipients.

According to yet a further embodiment of the present invention, there isprovided a method for instant voice messaging over a plurality of aplurality of packet-switched networks, the method comprising: selectingone or more recipients connected to a local network at a clientconnected to an external network; generating an instant voice messagefor the selected recipients at the client; transmitting the selectedrecipients and the instant voice message therefor over the externalnetwork from the client to an external server system; receiving theselected recipients and the instant voice message at the external serversystem; routing the selected recipients and the instant voice messageover the external network and the local network; receiving the selectedrecipients and the instant voice message therefor at a local serverconnected to the local network; delivering the instant voice message tothe selected recipients over the local network; audibly playing theinstant voice message at the selected recipients.

BRIEF DESCRIPTION OF THE DRAWINGS

The objects, features and advantages of the present invention willbecome apparent to one skilled in the art, in view of the followingdetailed description taken in combination with the attached drawings, inwhich:

FIG. 1 illustrates an example of a prior art IP telephony system;

FIG. 2 illustrates an exemplary local IVM system for enabling instantvoice messaging according to the present invention;

FIG. 3 illustrates an exemplary IVM client of FIG. 2 for enablinginstant voice messaging according to the present invention;

FIG. 4 illustrates an exemplary IVM server of FIG. 2 for enablinginstant voice messaging according to the present invention;

FIG. 5 illustrates an exemplary global IVM system comprising a local IVMsystem and global IVM clients, according to the present invention;

FIG. 6 illustrates an exemplary global IVM server system depicted inFIG. 5, according to the present invention;

FIG. 7 illustrates an exemplary transport server depicted in FIG. 6,according to the present invention;

FIG. 8 illustrates an exemplary directory server depicted in FIG. 6,according to the present invention; and

FIG. 9 illustrates an exemplary global IVM system comprising a pluralityof local IVM systems and global IVM clients, according to the presentinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT OF THE INVENTION

The present invention is directed to a system and method for enablinglocal and global instant VoIP messaging over an IP network with PSTNsupport.

FIG. 2 is an exemplary illustration of a local instant voice messaging(IVM) system 200 according to the present invention. The instant voicemessaging system 200 comprises a local IVM server 202 that provides thecore functionality for enabling instant voice messaging with PSTNsupport according to the present invention. The architecture of thelocal IVM server 202 will be described in detail hereinbelow withreference to FIG. 4. According to the exemplary IVM system 200, thelocal IVM server 202 is enabled to provide instant voice messaging toone or more IVM clients 206 and 208, as well support instant voicemessaging for PSTN legacy telephones 110. It is noted that although FIG.2 depicts one of each IVM client 206, 208 and legacy telephone 110 forclarity and brevity, the local IVM server 202 is enabled to support aplurality of each of the foregoing IVM clients 206, 208 and legacytelephone 110. The local packet-switched IP network 204 interconnectsthe IVM clients 206, 208 and the legacy telephone 110 to the local IVMserver 202 as well as interconnecting the local IVM server 202 to thelocal IP network 204. The network 204 may be a local area network (LAN),a wide area network (WAN), or the like, which supports both wired andwireless devices. The exemplary IVM client 208 is a VoIP softphone, thearchitecture of which will be described in detail hereinbelow withreference to FIG. 3. A microphone 212 is connected to the IVM client 208and enables the recording of an instant voice message according to thepresent invention into an audio file 210 for transmission to the localIVM server 202 over the network 204. An input device 218 (e.g., akeyboard) is connected to the IVM client 208 to select one or morerecipients that are to receive the recorded instant voice message.Although not depicted in FIG. 2, the input device 218 may include atrackball, digitizing pad or mouse, or the like. A display device 216 isconnected to the IVM client 208 to display instant voice messagesrecorded and/or received by a user of the IVM client 208. An audiodevice 214, such as external speaker, is connected to the IVM client 208to play received instant voice messages. It is noted that the microphone212, audio device 214, display device 216 and input device 218 may formintegral parts of the IVM client 208.

Further with reference to FIG. 2, IVM client 206 is interconnected viathe network 204 to the local IVM server 202. An exemplary IVM client 206is a VoIP telephone, which comprises a screen display (not shown)capable of displaying instant voice messages recorded and/or received bya user of the IVM client 206 according to the present invention. TheVoIP telephone 206 further comprises a handset and/or speakerphone forrecording instant voice messages and listening to instant voice messagesreceived at the VoIP telephone 206 according to the present invention.The VoIP telephones which may be implemented to provide instant voicemessaging functionality according to the present invention arecommercially available from many vendors, including Alcatel™, Lucent™,NEC™ and Cisco™, to name just a few. In addition to the foregoing IVMclients 206, 208, the IVM system 200 supports a legacy telephone 110 forinstant voice messaging according to the present invention. The legacytelephone 110 is connected to a legacy switch 112. The legacy switch 112is further connected to a media gateway 114. Both the legacy switch 112and the media gateway 114 interconnect the legacy telephone 110 via thenetwork 204 to the local IVM server 202, thereby facilitating instantvoice messaging according to the present invention. The media gateway114 may be a gateway that supports trunk pack network control (i.e.,“TPNCP”) protocol, media gateway control protocol (i.e., “MGCP”), or amedia gateway control H.428 protocol (i.e., “MEGACO”). As previouslymentioned, the media gateway 114 converts the audio signal carried overPSTN to packets to be transmitted over a packet-switched IP network,such as the local network 204.

The implementation of the instant voice messaging for IVM client 208will be described first and will be followed by the implementations forIVM client 206 and legacy telephone 110, with reference to the local IVMsystem 200 depicted in FIG. 2. These implementations implement a “recordmode” of the instant voice messaging according to the present invention.There will further be described an “intercom mode” of the instant voicemessaging according to the present invention. Therefore, in operation ofthe IVM client 208 according to FIG. 2, the IVM client (IVM softphone)208 is connected over the network 204 to the IVM server 202, which asaforementioned enables instant voice messaging functionality over thenetwork 204. The IVM client 208 displays a list of one or more IVMrecipients on its display 216, provided and stored by the local IVMserver 202, as will be particularly described hereinbelow with referenceto FIG. 4. The user operates the IVM client 208 by using the inputdevice 218 to indicate a selection of one or more IVM recipients fromthe list. The user selection is transmitted to the IVM server 202. Theuser selection also generates a start signal to the IVM client 208 thatthe user is ready to begin instant voice messaging according to thepresent invention. In response to the start signal, the IVM client(softphone) 208 listens to the input audio device 212 and records theuser's speech into a digitized audio file 210 (i.e., instant voicemessage) stored on the IVM client 208. The audio file 210 at the IVMclient 208 is finalized via a stop signal, which is generated by theuser via the input device 218 or a preset time period without speechinput via the input audio device 212 on the IVM client 208. Once therecording of the user's speech is finalized, IVM client 208 generates asend signal indicating that the digitized audio file 210 (instant voicemessage) is ready to be sent to the selected recipients. The usergenerates the send signal when the user operates the IVM client 208 viathe input device 218, e.g., pressing a key on a keyboard or clicking abutton on a mouse. The IVM client 208 transmits the digitized audio file210 and the send signal to the local IVM server 202. In response to thesend signal indicating that the instant voice message is ready to besent, the IVM client 208 sends the recorded audio file 210 destined forthe selected one or more recipients via local IVM server 202. Afterreceiving the audio file 210, the IVM server 202 thereafter delivers thetransmitted instant voice message to the selected one or more recipientsvia the local IP network 204. The one or more recipients are enabled todisplay an indication that the instant voice message has been receivedand audibly play the instant voice message to an associated user. Itshould be understood that only the available IVM recipients, currentlyconnected to the IVM server 202, will receive the instant voice message.It is noted that if a recipient IVM client is not currently connected tothe local IVM server 202 (i.e., is unavailable), the IVM servertemporarily saves the instant voice message and delivers it to the IVMclient when the IVM client connects to the local IVM server 202 (i.e.,is available).

There are several embodiments for the operation of the IVM client (VoIPtelephone) 206 within the IVM system 200, according to the presentinvention. In the first embodiment, the VoIP telephone 206 is astandalone IVM client 206 enabled for instant voice messaging accordingto the present invention. In the second embodiment, the VoIP telephone206 operates synchronously either with the IVM client 208 or IVM server202 to enable instant voice messaging according to the presentinvention. Thus, in operation according to the first embodiment in FIG.2, the IVM client (VoIP telephone) 206 is connected over the network 204to the IVM server 202, which as aforementioned enables instant voicemessaging functionality over the local network 204. The IVM client 206displays a list of one or more IVM recipients on its associated displayprovided and stored by the local IVM server 202, as will be particularlydescribed hereinbelow with reference to FIG. 4. The user operates theIVM client 206 by using a keypad on the VoIP telephone 206 to indicate aselection of one or more IVM recipients from the list. The VoIPtelephone 206 transmits the selection to the IVM server 202. The userselection also generates a start signal to the IVM client 206 indicatingthe user is ready to begin instant voice messaging according to thepresent invention. The user speaks into the handset of the IVM client206 or a speakerphone on the IVM client 206. Although not shown in FIG.2, the VoIP telephone 206 may provide a dedicated storage device, whichin response to the start signal records an audio file, similar to theaudio file 210 in the IVM client 208. The audio file is finalized via astop signal. The stop signal is generated when the user presses a buttonon the keypad, a preset time period without speech input to the VoIPtelephone 206, or when the user returns the handset to the cradle of theVoIP telephone 206. Once the recording of the user's speech is complete,a send signal is generated indicating that the instant voice message isready to be sent to the selected recipients. The user generates the sendsignal when the user presses a button on the keypad or returns thehandset of the VoIP telephone 206 to it cradle (on-hook). In response tothe send signal, the IVM client 206 sends the recorded audio to thelocal IVM server 202 via the network 204. The IVM server 202 thereafterdelivers the instant voice message to the selected one or morerecipients via the IP network 204. As before, the one or more recipientsare enabled to display an indication that the instant voice message hasbeen received and audibly play the instant voice message. Asaforementioned, if a recipient IVM client is not currently connected tothe local IVM server 202, the IVM server 202 temporarily saves theinstant voice message and delivers it to the IVM client when the IVMclient connects to the local IVM server 202.

In the second embodiment of the IVM client 206 according to FIG. 2, theVoIP telephone 206 operates synchronously either with the IVM client 208or the IVM server 202 to enable instant voice messaging according to thepresent invention. Thus, in operation according to the secondembodiment, the IVM client (VoIP telephone) 206 is still connected overthe network 204 to the IVM server 202, which as aforementioned enablesinstant voice messaging functionality over the local network 204.However, VoIP telephone 206 cooperates with the IVM client 208 or IVMserver 202 to record and send an instant voice message. Morespecifically, the VoIP telephone 206 is only used as arecording/listening device for recording or listing to instant voicemessages, while the IVM client 208 is used for displaying and selectinginstant voice message recipients as described hereinabove. In operation,the IVM client 208 displays a list of IVM recipients on the displaydevice 216 provided and stored by the local IVM server 202. The useroperates the IVM client 208 by using the input device 218 on the IVMclient 208 to indicate a selection of one or more IVM recipients fromthe list. The user selection is transmitted to the IVM server 202. Theuser selection generates a start signal to the IVM server 202 indicatingthat the user is ready to begin instant voice messaging according to thepresent invention. In response to receiving the start signal, the IVMserver 202 transmits a ring signal to the VoIP telephone 206, therebyindicating to the user the IVM system 200 is ready to record an instantvoice message. The IVM server 202 also signals the IVM client 208 togenerate audio file 210 to record the instant voice message. As the userpicks up the handset of the VoIP telephone 206 (off-hook), a connectionis established via the network 204 between the local IVM server 202 andthe VoIP telephone 206. Thereafter, the IVM server 202 forwards theuser's speech transmitted from VoIP telephone 206 to the IVM client 208for storage into digitized audio file 210 on the IVM client 208. Theaudio file 210 is finalized by returning the handset its cradle(on-hook) or by pressing a designated button on the keypad VoIPtelephone 206, which transmits the stop signal to the IVM server 202 andfurther from the IVM server 202 to the IVM client 208. Returning thehandset to its cradle preferably generates a send signal to the IVMserver 202, which transmits the signal to the IVM client 208. The IVMclient thereafter transmits the recorded audio file 210 (instant voicemessage) to IVM server 202 for delivery to the selected one or more IVMrecipients. Alternatively, the user may press a key on the keyboard 218to initiate the send signal. In response to the send signal, the IVMclient 206 sends the recorded audio to the local IVM server 202 via thenetwork 204. The IVM server 202 thereafter delivers the instant voicemessage to the selected one or more recipients via the IP network 204.The one or more recipients are enabled to display an indication that theinstant voice message has been received and audibly play the instantvoice message. If a recipient IVM client is not currently connected tothe local IVM server 202, the IVM server 202 temporarily saves theinstant voice message and delivers it to the IVM client when the IVMclient connects to the local IVM server 202.

In operation of the legacy telephone 110 according to FIG. 2, the legacytelephone 110 is connected to the local IVM server 202 via media gateway114 and legacy switch 112. The legacy telephone 110 cooperates with theIVM client 208 to record and send an instant voice message. Morespecifically, the legacy telephone 110 is used as a recording/listeningdevice for recording or listing to instant voice messages, while the IVMclient 208 is used for displaying and selecting instant voice messagerecipients as described hereinabove. Thus, in operation the IVM client208 displays a list of IVM recipients on the display device 216 providedand stored by the local IVM server 202. The user operates the IVM client208 by using the input device 218 on the IVM client 208 to indicate aselection of one or more IVM recipients from the list. The userselection is transmitted to the IVM server 202. The user selectiongenerates a start signal to the IVM server 202 indicating that the useris ready to begin instant voice messaging according to the presentinvention. In response to receiving the start signal, the IVM server 202transmits an emulation code to the legacy telephone 110 to ring, therebyindicating to the user the IVM system 200 is ready to record an instantvoice message. As the user picks up the handset of the legacy telephone110 (off-hook), a connection is established via the network 204 betweenthe legacy telephone 110 and the IVM server 202. Thereafter, the IVMserver forwards the user's speech transmitted from the legacy telephone110 to the IVM client 208 for storage into the digitized audio file 210(i.e., instant voice message). The audio file on the IVM client 208 isfinalized by returning the handset of the legacy telephone 110 to itscradle (on-hook) or by pressing a designated button on the keypad of thelegacy telephone 110, which transmits a stop signal to the IVM server202 and further to the IVM client 208. Returning the handset to itscradle also generates a send signal to the IVM server to transmit therecorded audio file (instant voice message) to the selected one or moreIVM recipients. The IVM server 202 thereafter delivers the instant voicemessage to the selected one or more recipients via the IP network 204.The one or more recipients are enabled to display an indication that thereceived instant voice message has been received and audibly play theinstant voice message. If a recipient IVM client is not currentlyconnected to the local IVM server 202, the IVM server 202 temporarilysaves the instant voice message and delivers it to the IVM client whenthe IVM client connects to the local IVM server 202.

Regarding the operational embodiments described with reference to FIG. 2for recoding and transmitting an instant voice message according to thepresent invention, the digitized audio file is preferably compressed byapplying a compression algorithm before sending the audio file to theone or more selected recipients. The audio file is preferably compressedwithin the IVM clients 206, 208 before forwarding the audio file to theIVM server 202 for subsequent delivery to the one or more selectedrecipients. Alternatively, the compression may be implemented within theIVM server 202 before the audio file is transmitted to the one or moreselected recipients. A Lempel-Ziv compression algorithm is preferablyused to compress the audio file according to the present invention. Itis noted that many suitable compression algorithms are known to personsof skill in the art, including Huffman encoding, audio compressionstandards promulgated by the Moving Pictures Experts Group (“MPEG”),G.722 wideband speech encoding standard, fractal compression, andwavelet compression. Any of the foregoing compression algorithms may beimplemented within the scope of the present invention.

Further regarding the operational embodiments described with referenceto FIG. 2 for recoding and transmitting an instant voice messageaccording to the present invention, the digitized audio file (which mayor may not be compressed as described above) is further preferablyencrypted via an encryption algorithm before transmitting the audio fileto the one or more selected recipients. The encryption is preferablyimplemented within the IVM clients 206, 208 before forwarding the audiofile to the IVM server 202 for subsequent delivery to the one or moreselected recipients. Alternatively, the encryption may be implementedwithin the IVM server 202 before the audio file is transmitted to theone or more selected recipients. An AES (Rijndael) encryption algorithmis preferably used to encrypt the audio file according to the presentinvention. It is noted that many suitable encryption algorithms areknown to persons skilled in the art, including DES, Triple DES,Blowfish, Twofish, Serpent, and the like. Any of the foregoingencryption algorithms may be implemented within the scope of the presentinvention.

Lastly with reference to FIG. 2, in addition to the “record mode” ofinstant voice messaging, the instant voice messaging system 200 alsosupports an “intercom mode” of voice messaging. The “intercom mode”represents real-time instant voice messaging. In the “intercom mode,”instead of creating an audio file 210, one or more buffers (not shown)of a predetermined size are generated in the IVM client 206, 208 orlocal IVM server 202. The one or more buffers are used to automaticallywrite successive portions of the instant voice message. Once a firstbuffer is full, i.e., input audio of the predetermined size is writtento the buffer, the content of the first buffer is automaticallytransmitted to the IVM server 202 for transmission to the one or moreIVM recipients. A second buffer is meanwhile written with the nextsuccessive portion of input audio. Once, the second buffer is full,i.e., input audio of the predetermined size is written to the buffer,the content of the second buffer is transmitted to the IVM server 202for transmission to the one or more IVM recipients. If the entireinstant voice message or a successive portion thereof (such as a lastsuccessive portion in the instant voice message) written to eitherbuffer is smaller the predetermined size, then the buffered content ofless than the predetermined size is automatically transmitted to the IVMserver 202. The foregoing buffering using the first and second buffersis repeated until the entire instant voice message has been transmittedto the IVM server 202 for transmission to the one or more IVMrecipients. It is noted that the invention is not limited to aparticular number of buffers. The foregoing buffering and transmissionallows a “real-time” instant voice message to be transmitted to the oneor more IVM recipients. The “intercom mode” may be designated as adefault mode when an IVM recipient is on-line, while the “record mode”may be designated as a default if the IVM recipient is unavailable,i.e., not on-line. The user may easily change the “intercom mode” to the“record mode” on the respective IVM client 206, 208. Finally, the audiocontents of the buffers may be signal processed (for clarity), encryptedand compressed before transmission, as will be described in more detailhereinbelow with reference to FIG. 3.

FIG. 3. an exemplary illustration of the architecture in the IVM client208 for enabling instant voice messaging according to the presentinvention. More specifically, the IVM client 208 comprises a clientplatform 302 for generating an instant voice message and a messagingsystem 320 for messaging between the IVM client 208 and the IVM server202 for enabling instant voice messaging according to the presentinvention. The IVM client 208 is a general-purpose programmable computerequipped with a network interface (not shown), such as an Ethernet card,to provide connectivity to the network 204. It is noted that anysuitable networking protocol, not only Ethernet, could be used toconnect the IVM client to a network 204 and thus is considered withinthe scope of the present invention. The client platform 302 comprises aclient engine 304, which controls other components, namely the documenthandler 306, file manager 308, audio file creation 312, signalprocessing 314, encryption/decryption 316, and compression/decompression318. The messaging system 320 and the client engine 304 communicate viastandard inter-process communication. The messaging system 320 andclient engine 304 also communicate with the IVM server 202 over thenetwork interface via the network 204. The document handler 306 overseesthe retrieving, sending, receiving and storing of one or more documents(or files) attached to instant voice messages from/to the one or moreselected IVM recipients that may be communicating with the IVM client208. More specifically, when an instant voice message is to betransmitted to the one or more IVM recipients, one or more documents maybe attached to the instant voice message to be, stored or displayed bythe one or more selected IVM recipients. The file manager accesses amessage database 310, in which both the received and recorded instantvoice messages are represented as database records, each recordcomprising a message identifier and the instant voice message. The filemanager 308 services requests from the user to record, delete orretrieve messages to/from the message database 310. Audio file creation312 creates an instant voice message as audio file 210, and isresponsible for receiving input speech for the instant voice messagefrom audio input device 212 or via network 204 and storing the inputspeech into audio file 210. Signal processing 314 performs noise removaland signal optimization in the audio file 210. Encryption/decryption 316provides for respectively encrypting/decrypting of outgoing/incomingaudio files (i.e., instant voice messages), andcompression/decompression 318 respectively compresses/decompresses theoutgoing/incoming audio files.

Further with reference to FIG. 3, the reception of an instant voicemessage is described as follows. It is assumed that the local IVM server202 has determined that the IVM client 208 is available to receive aninstant voice message by checking the IVM client's 208 current status,i.e., whether the IVM client 208 is “on-line.” The local IVM server 202maintains the current status of the IVM clients connected to the localIVM server 202, i.e., IVM clients 206, 208. It is further assumed thatan IVM client has transmitted an instant voice message to the IVM client208. The local IVM server 202 receives the instant voice message overthe local IP network 204 and forwards the instant voice message to theIVM client 208. Upon receipt at the IVM client 208, the instant voicemessage is decrypted at 316, decompressed at 318, and stored in themessage database 310 using the file manager 308. Any files attached tothe instant voice message are also stored in the message database 310using the file manager 308. A visual and/or sound effect is initiated tonotify a user of the IVM client 208 that a new instant voice message hasbeen received at the IVM client 208. At this point in time, the instantvoice message and any file attachments are available to the user. Theuser can select the instant voice message from a listing of availableinstant voice messages displayed on the IVM client 208 and play thenewly received instant voice message. The user may also open any fileattachments and move or save the files to a separate location on theclient using a drag-and-drop process.

Still further with reference to FIG. 3, the generation and transmissionof an instant voice message is described as follows. The user selectsthe available one or more IVM recipients and initiates the creation ofan instant voice message as described above with reference to FIG. 2.The client engine 304 detects the start signal and invokes audio filecreation 312 of the audio file 210. The audio file 210 is initializedand captures the audio voice message input by the user. Once the clientengine 304 detects a stop signal, the instant voice message is finalizedin the audio file 210 via audio file creation 312. The audio file 210 isadjusted for gain, and noise is removed via signal processing 314. Theaudio file 210 is further compressed at 318 and encrypted at 316. Thecompletion of these processes causes the client engine 304 to inform theuser via display 216 that the instant voice message is available to besent. After the client engine 304 detects the send signal from the user,the instant voice message (audio file 210) is transferred to the localIVM server 202. Before the transmission of the instant voice message(i.e., before the send signal), the user has the option to review theinstant voice message, re-record the instant voice message, delete theinstant voice, as well as attach one or more files (i.e., documents).The attachment of one or more files is enabled conventionally via amethodology such as “drag-and-drop” and the like, which invokes thedocument handler 306 to make the appropriate linkages to the one or morefiles and flags the messaging system 320 that the instant voice messagealso has the attached one or more files.

FIG. 4. an exemplary illustration of the local IVM server 202 forenabling instant voice messaging according to the present invention. TheIVM server 202 is a general-purpose programmable computer equipped witha network interface, such as an Ethernet card, to provide connectivityto a network 204. It is noted that any suitable networking protocol maybe implemented to connect the IVM server 202 to a network 204. The IVMserver 202 comprises a server communication platform 402, a messagingsystem 436 and a database 414, thereby enabling instant voice messagingaccording to the present invention. The server communication platform402 comprises a server engine 404, client manager 406, station manager408, gateway manager 410, database manager 412 that accesses database414, supplemental servers 416 (including particular server subsystems418-424), as well as a control layer 426 (including non-proprietaryserver subsystems 428, 430 and proprietary server subsystems 432, 434).The messaging system 436 and the server engine 304 communicate viastandard inter-process communication. The messaging system 436 and theserver engine are also able to communicate with the IVM clients 206, 208over the network interface via the network 204. The database 414 storesusers (e.g., IVM clients as well as legacy telephone clients) that areknown to the IVM server 202 via the database manager 412. The users arerepresented in the database as records, each record comprising a username, a password, and a contact list (a list of other users with whomthe user wishes to exchange instant voice messages), and other datarelating to the user. The database manager 412 services requests to add,update, delete, or retrieve database records to/from the database 414.The password may be stored in the database 414 as plaintext, inencrypted form, or as a hash (e.g., MD5 hash). The messaging system 436communicates to the server engine 404 via message objects.

A message object comprises an action field, an ID field, a source field,a destination field, and an object field. The content of the actionfield is selected from a list of permitted actions, which among otheractions includes: connect, disconnect, subscribe, unsubscribe, and postmessage. In addition, the actions include: determining if an IVM clientis awake (i.e., pinging), disconnecting from the IVM client, processingan IVM client message, and notifying IVM clients if the IVM server 202goes down. The client messages include sending an instant voice messageportions, checkin message, send message, set status message, send aphone command message, and send control parameters message. The contentof the ID field represents a unique identifier for the message object.The content of the source field is a globally unique identifier (“GUID”)that uniquely identifies the sender of the message. This uniqueidentifier can be generated by any known way, including the GloballyUnique ID function call available in the Microsoft Windows and MicrosoftNET environments. In some circumstances, the source field is set to aspecial value to indicate that the sender of the message object isentitled to special privileges. The senders with special privileges arein fact IVM servers. This allows the IVM servers to broadcast messagesto one another, subscribe to special events, and directly send messagesto specific IVM servers. These privileges can depend upon whether theIVM servers are local servers or global servers. As an example, therecan exist more than one local IVM server, each of these local IVMservers automatically has privileges to communicate to other local IVMserver. On a global server system, a directory server can communicatewith one or more transport servers. The content of the destination fieldis a GUID of an intended IVM recipient of the instant voice message. Thecontent of the object field is a block of data being carried by themessage object, which may be, for example, a digitized instant voicemessage. Depending on the circumstances in which the message object issent, some of the message object fields may be left blank or ignored.For example, the message object may merely require an action to beperformed based upon the GUID supplied. In this case, the action doesnot necessarily require any data to be sent or received and some of themessage object's fields may be left blank or ignored.

Connection objects maintain the logical connections between the IVMserver 202 and IVM clients 206, 208 connected to the IVM server 202.More specifically, a connection object comprises data representing thestate of the connection and code (one or more methods) for establishingand maintaining the logical connections between the IVM server 202 andthe IVM clients 206, 208 within the IVM system 200 of FIG. 2. Theconnection object can contain both data and/or commands, includinginformation that describes the socket, the size of the data to betransferred, and the priority of the transfer (e.g., high, normal, low,unknown). On start up the local IVM server 202 generates and maintains alist for each IVM client 206, 208. The local IVM server 202 then waitsto receive connection objects from the IVM clients 206, 208 that arestored in the respective lists, decodes the received connection objectsto obtain specific requests, and then services the specific requestsfrom the IVM clients 206, 208.

Further with reference to FIG. 4, the server engine 404 controls allother subsystems in the server communication platform 402, and it isresponsible for startup and shutdown of the IVM server 202 and the IVMsystem 200. The client manager 406 controls the IVM clients 206, 208,providing contact presence (connection) information and messagescheduling and delivery. The station manager 408 controls the individuallegacy telephone 110 and coordinates its activity to work synchronouslywith the IVM client 208 and server 202. The gateway manager 410 enablesthe IVM server 202 to communicate with the legacy telephones, such aslegacy telephone 110. The control layer 426 comprises a plurality ofserver subsystems 428-434, each of which provides translation servicesto different proprietary and non-proprietary gateways 114, such asTPNCP, MGCP, and MEGACO gateways. The proprietary server subsystems 428,430 and non-proprietary server subsystems 432, 434 are connected torespective gateways 114 via the local IP network 204. The supplementalserver subsystems 416 provide a number of required services such asdisplay manager subsystem 418, dynamic host configuration protocol(i.e., “DHCP”) subsystem 420, trivial file transfer protocol (i.e.,“TFTP”) server subsystem 422, and hypertext transfer protocol (i.e.,“HTTP”). Each of the supplemental servers 418-424 in the subsystem 416is used during the initial set-up of the IVM system 200. The boot-upprocess and allocation of IP addresses to IVM clients 206, 208 areperformed through an LCD panel (not shown) associated with the local IVMserver 202. The LCD manager 418 supports this boot-up process. The DHCPserver 420 is used to allocate IP addresses as required and allows theadvanced configuration of network settings in the instant voicemessaging system. The TFTP server 422 provides a TCP/IP file transfercapability. Lastly, the HTTP server 424 provides services for a webserver.

FIG. 5 is an exemplary illustration of a global instant voice messaging(IVM) system 500, according to the present invention. In the global IVMsystem 500, the local IVM system 200 is depicted as a local IVM system510, which is connected to a packet-switched network 102 (i.e.,Internet). The global IVM system 500 comprises the local IVM system 510,global IVM server system 502, and global IVM clients 506 and 508 thatare optionally connected via local IP network 504. The global IVM serversystem 502 is connected to the IP network (i.e., Internet) 102 forenabling the local IVM clients 206, 208 and legacy telephone 110 in thelocal IVM system 510 to generate and send instant voice messages to theglobal IVM clients 506, 508, as well as the local IVM clients 206, 208to receive instant voice messages from the global IVM clients 506, 508.The implementation of the global instant voice messaging for the IVMclient 208 will be described first and will be followed by theimplementations for IVM client 206 and legacy telephone 110, withreference to the global IVM system 500 depicted in FIG. 5. Thereafter,instant voice messaging for global clients 506 and 508 will be describedaccording to the present invention. These implementations implement a“record mode” of the instant voice messaging according to the presentinvention. Thereafter, there will lastly be described an “intercom mode”of the instant voice messaging according to the present invention.

Therefore, in operation of the IVM client 208 according to FIG. 5, theIVM client 208 is connected via the networks 204, 102 to the global IVMserver system 502, which enables the global instant voice messagingfunctionality outside the local IVM system 510 over the network (i.e.,Internet) 102. More specifically, the IVM client 208 requests from theglobal IVM server system 502 a global contact list (not shown) of globalone or more IVM recipients with which the IVM client 208 may exchangeinstant voice messages. For the purposes of illustration, it is assumedthat global IVM clients 506, 508 are in the contact list. The global IVMserver system 502 stores and maintains this contact list. Thus, theglobal IVM server system 502 responds by transmitting the contact listto the IVM client 208. The IVM client 208 displays the contact list onits display 216. Alternatively, the global contact list may bereplicated to the local IVM server 202 within the local IVM system 510,in which case the local IVM client 208 obtains the global contact listfrom the local IVM server 202. The user operates the IVM client 208 byusing the input device 218 to indicate a selection of one or more IVMrecipients from the global contact list. Here, for the purposes ofillustration it is again assumed that IVM client 208 selected global IVMclients 506, 508. The user selection is transmitted to the IVM server202. The user selection also generates a start signal to the IVM client208 that the user is ready to begin instant voice messaging. In responseto the start signal, the IVM client 208 listens to the input audiodevice 212 and records the user's speech into a digitized audio file 210(i.e., instant voice message) stored on the IVM client 208. The audiofile 210 is finalized via a stop signal, which is generated by the uservia the input device 218 or a preset time period without speech inputvia the input audio device 212. Once the recording is finalized, the IVMclient 208 generates a send signal indicating that the digitized audiofile 210 (instant voice message) is ready to be sent to the selected oneor more IVM recipients. The user generates the send signal when the useroperates the IVM client 208 via the input device 218. The IVM client 208transmits the digitized audio file 210 and the send signal to the globalIVM server system 502 via the local IP network 204 and the global IPnetwork 102. After receiving the audio file 210, the global IVM serversystem 502 delivers the transmitted instant voice message to theselected one or more recipients (e.g., IVM clients 506 and 508) via theIP network 102. The one or more recipients are enabled to display anindication that the instant voice message has been received and audiblyplay the instant voice message to an associated user. It is noted thatif a recipient IVM client 506, 508 is not currently connected to theglobal IVM server system 502, the global IVM server system 502temporarily saves the instant voice message and delivers it to theglobal IVM client 506, 508 when the IVM client connects to the globalIVM server system 502.

There are several embodiments for the operation of the IVM client (VoIPtelephone) 206 within the global IVM system 500 of FIG. 5, according tothe present invention. In the first embodiment, the VoIP telephone 206is a standalone IVM client 206 enabled for instant voice messagingaccording to the present invention. In the second embodiment, the VoIPtelephone 206 operates synchronously with the IVM client 208 to enableinstant voice messaging according to the present invention. Thus, inoperation according to the first embodiment in FIG. 5, the IVM client206 is connected via the networks 204, 102 to the global IVM serversystem 502, which enables instant voice messaging functionality over theIP network (Internet) 102. As mentioned previously, the IVM client 206is also connected to the local IVM server 202. The IVM client 208requests from the global IVM server system 502 a global contact list(not shown) of the global one or more IVM recipients with which the IVMclient 206 may exchange instant voice messages. For the purposes ofillustration, it is assumed that the global IVM clients 506, 508 are inthe contact list. The global IVM server system 502 stores and maintainsthis contact list. Thus, the global IVM server system 502 responds bytransmitting the global contact list to the IVM client 206.Alternatively, the global contact list may be replicated to the localIVM server 202 within the local IVM system 510, in which case the localIVM client 206 obtains the global contact list from the local IVM server202. The IVM client 206 displays a list of the one or more IVMrecipients on its associated display. The user operates the IVM client206 by using a keypad on the VoIP telephone 206 to indicate a selectionof one or more IVM recipients from the list. The VoIP telephone 206transmits the selection to the global IVM server system 502. The userselection also generates a start signal to the IVM client 206 indicatingthe user is ready to begin instant voice messaging according to thepresent invention. The user speaks into the handset of the IVM client206 or a speakerphone on the IVM client 206. Although not shown in FIG.5, the VoIP telephone 206 may provide a dedicated storage device, whichin response to the start signal records an audio file, similar to theaudio file 210 in the IVM client 208. The audio file is finalized via astop signal. The stop signal is generated when the user presses a buttonon the keypad, a preset time period without speech input to the VoIPtelephone 206, or when the user returns the handset to the cradle of theVoIP telephone 206. Once the recording of the user's speech is complete,a send signal is generated indicating that the instant voice message isready to be sent to the selected recipients. The user generates the sendsignal when the user presses a button on the keypad or returns thehandset of the VoIP telephone 206 to it cradle. In response to the sendsignal, the IVM client 206 sends the recorded audio file (instant voicemessage) to the global IVM server system 502 via the networks 204, 102for delivery to the selected one or more IVM recipients. The global IVMserver 502 thereafter delivers the instant voice message to the selectedone or more recipients (e.g., IVM clients 506 and 508) via the IPnetwork 102. As before, the one or more recipients are enabled todisplay an indication that the instant voice message has been receivedand audibly play the instant voice message. If a recipient IVM client isnot currently connected to the global IVM server system 502, the globalIVM server system 502 temporarily saves the instant voice message anddelivers it to the IVM client when the IVM client connects to the globalIVM server system 502.

In the second embodiment of the IVM client 206 according to FIG. 5, theVoIP telephone 206 operates synchronously with the IVM client 208 toenable global instant voice messaging according to the presentinvention. Thus, in operation according to the second embodiment in FIG.5, the VoIP telephone 206 is connected over the network 204 to the IVMclient 208 and the IVM client 208 is connected via the networks 204, 102to the global IVM server system 502, which enables instant voicemessaging functionality over the IP network (Internet) 102. The VoIPtelephone 206 cooperates with the IVM client 208 to record and send aglobal instant voice message outside the local IVM system 510. The IVMclient 208 displays a global contact list of IVM recipients (not shown)on the display device 216 provided by the global IVM server system 502,as described hereinabove. Alternatively, the global contact list may bereplicated to the local IVM server 202 within the local IVM system 510,in which case the IVM client 208 obtains the global contact list fromthe local IVM server 202. The user operates the IVM client 208 by usingthe input device 218 to indicate a selection of one or more IVMrecipients from the contact list. The user selection generates a startsignal in the IVM client 208 indicating that the user is ready to begininstant voice messaging according to the present invention. In responseto the start signal, the IVM client 208 generates audio file 210 torecord an instant voice message and transmits a ring signal to the VoIPtelephone 206. As the user picks up the handset of the VoIP telephone206 (off-hook), a connection is established via the network 204 betweenthe local IVM client 208 and the VoIP telephone 206. Thereafter, theVoIP telephone 206 forwards the user's speech to the IVM client 208 forstorage into the audio file 210. The audio file 210 is finalized byreturning the handset its cradle (on-hook) or by pressing a designatedbutton on the keypad VoIP telephone 206, which transmits the stop signalto the IVM client 208. Returning the handset to its cradle preferablygenerates a send signal to the IVM client 208. The IVM client thereaftertransmits the recorded audio file 210 (instant voice message) to theglobal IVM server system 502 via networks 204, 102 for delivery to theselected one or more IVM recipients. Alternatively, the user may press akey on the keyboard 218 to initiate the send signal. In response to thesend signal, the IVM client 208 sends the recorded audio file to theglobal IVM server system 502 for delivery to the selected one or moreIVM recipients. The global IVM server system 502 thereafter delivers theinstant voice message to the selected one or more recipients (e.g., IVMclients 506 and 508) via the IP network 102. As before, the one or moreIVM recipients are enabled to display an indication that the instantvoice message has been received and audibly play the instant voicemessage. If a recipient IVM client is not currently connected to theglobal IVM server system 502, the global IVM server system 502temporarily saves the instant voice message and delivers it to the IVMclient when the IVM client connects to the global IVM server system 502.

In operation of the legacy telephone 110 according to FIG. 5, the legacytelephone 110 is connected to the local IVM client 208 via media gateway114, legacy switch 112 and network 204. The legacy telephone 110cooperates with the IVM client 208 to record and send an instant voicemessage outside the local IVM system 510. More specifically, the legacytelephone 110 is used as a recording/listening device for recording orlisting to instant voice messages, while the IVM client 208 is used fordisplaying and selecting instant voice message recipients as describedhereinabove. Thus, in operation the IVM client 208 requests from theglobal IVM server system 502 a global contact list of global one or moreIVM recipients with which the IVM client 208 may exchange instant voicemessages. Alternatively, the global contact list may be replicated tothe local IVM server 202 within the local IVM system 510, in which casethe IVM client 208 obtains the global contact list from the local IVMserver 202. The IVM client 208 displays the global list of IVMrecipients, as described hereinabove. The user operates the IVM client208 to indicate a selection of one or more IVM recipients from theglobal contact list. The IVM client 208 transmits the user selection tothe global IVM server system 502. The user selection generates a startsignal in the IVM client 208 indicating that the user is ready to begininstant voice messaging according to the present invention. In responseto the start signal, the IVM client 208 transmits an emulation code tothe legacy telephone 110 to ring, thereby indicating to the user theglobal IVM system 500 is ready to record an instant voice message. Asthe user picks up the handset of the legacy telephone 110 (off-hook), aconnection is established via the network 204 between the legacytelephone 110 and the IVM client 208. Thereafter, the user's speech istransmitted from the legacy telephone 110 to the IVM client 208 forstorage into the digitized audio file 210 (i.e., instant voice message).The audio file 210 is finalized by returning the handset of the legacytelephone 110 to its cradle (on-hook) or by pressing a designated buttonon the keypad of the legacy telephone 110, which transmits a stop signalto the IVM client 208. Returning the handset to its cradle may alsogenerate a send signal to the IVM client 208 to transmit the recordedaudio file (instant voice message) to the global IVM server system 502for delivery to the selected one or more IVM recipients. Alternatively,the send signal is preferably generated from the IVM client 208 asdescribed hereinabove. The global IVM server system 502 thereafterdelivers the instant voice message to the selected one or more IVMrecipients via the IP network (Internet) 102. The one or more recipientsare enabled to display an indication that the instant voice message hasbeen received and audibly play the instant voice message. If a recipientIVM client is not currently connected to the global IVM server system502, the global IVM server system 502 temporarily saves the instantvoice message and delivers it to the IVM client when the IVM clientconnects to the global IVM server 502.

Further with reference to FIG. 5, the instant voice messaging for globalclients 506 and 508 will be described according to the presentinvention. In a first embodiment, each of the global IVM clients 506,508 is enabled to independently send an instant voice message. The IVMclients 506, 508 have like peripheral devices and functionalitydescribed respectively with reference to local IVM clients 206, 208 inFIG. 2. In second embodiment described below, the VoIP telephone 506operates in conjunction with the IVM client 508 to send an instant voicemessage. Therefore, in operation of the global IVM clients 506 and 508according the first embodiment in FIG. 5, the IVM clients 506, 508 areconnected via the networks 204, 102 to the global IVM server system 502,which enables the global instant voice messaging functionality outsidethe local IVM system 510 over the network (i.e., Internet) 102. Each ofthe global IVM clients 506, 508 is enabled to request from the globalIVM server system 502 a contact list (not shown) of global one or moreIVM recipients with which each of the global IVM client 506, 508 mayexchange instant voice messages. For the purposes of this illustration,it is assumed that the IVM clients 206 and 208 within the local IVMsystem 510 are in the contact list for each global IVM client 506, 508.The global IVM server system 502 stores and maintains the foregoingcontact list for each global IVM client 506, 508. Upon request, theglobal IVM server system 502 responds by transmitting the contact listto each of the IVM clients 506, 508. Each of the IVM clients 506, 508displays the contact list on its display. The user operates the IVMclient 506, 508 to indicate a selection of one or more IVM recipientsfrom the contact list. Each of the global IVM clients 506, 508 transmitsthe user selection to the global IVM server system 502. The userselection also generates a start signal to the IVM clients 506, 508 thatthe user is ready to begin instant voice messaging. In response to thestart signal, the IVM clients 506, 508 record the user's speech into adigitized audio file (i.e., instant voice message) stored on the globalIVM clients 506, 508. The audio file is finalized via a stop signal,which is generated by the user by operating the global IVM client 506,508. Once the recording is finalized, the IVM client 506, 508 generatesa send signal indicating that the digitized audio file (instant voicemessage) is ready to be sent to the selected one or more recipients. Theuser generates the send signal when the user operates the global IVMclient 506, 508. The IVM client 208 transmits the digitized audio fileand the send signal to the global IVM server system 502. After receivingthe audio file, the global IVM server system 502 delivers thetransmitted instant voice message to the local IVM server 202 in thelocal IVM system 510 for delivery to the selected one or more recipients(e.g., local IVM clients 206 and 208) via the local IP network 204. Theone or more recipients IVM 206, 208 are enabled to display an indicationthat the instant voice message has been received and audibly play theinstant voice message to an associated user. It is noted that if arecipient IVM client 206, 208 is not currently connected to the localIVM server 202, the IVM server 202 temporarily saves the instant voicemessage and delivers it to the local IVM client 206, 208 when the IVMclient connects to the local IVM server 202.

In the second embodiment of the IVM client 506 according to FIG. 5, theVoIP telephone 506 operates synchronously with the IVM client 508 toenable global instant voice messaging according to the presentinvention. In this embodiment, the VoIP telephone 506 and the IVM client508 may be located in a user's residence and be connected to a local IPnetwork 504. This local IP network 504 can be a WiFi network or a localarea network (i.e., LAN), which is also within the user's residence. Thelocal IP network 504 may be connected to the IP network (Internet) 102via a digital subscriber line (i.e., DSL) connection, cable connection,dialup connection, or the like. As noted above, the IVM clients 506, 508have like peripheral devices and functionality described respectivelywith reference to local IVM clients 206, 208 in FIG. 2. Thus, inoperation according to this embodiment in FIG. 5, the global IVM client508 requests from the global IVM server system 502 a contact list ofglobal one or more IVM recipients with which each of the global IVMclient 508 may exchange instant voice messages. For the purposes of thisillustration, it is assumed that the IVM clients 206 and 208 within thelocal IVM system 510 are in the contact list for the global IVM client508. The global IVM server system 502 stores and maintains the foregoingcontact list for the global IVM client 508. The IVM client 508 displaysa contact list of IVM recipients on the associated display deviceprovided by the global IVM server system 502, as described hereinabove.The user operates the IVM client 508 by using the associated inputdevice to indicate a selection of one or more IVM recipients from thecontact list. The user selection generates a start signal in the IVMclient 508 indicating that the user is ready to begin instant voicemessaging according to the present invention. In response to the startsignal, the IVM client 508 generates audio file to record an instantvoice message and transmits a ring signal to the VoIP telephone 506 vialocal IP network 504. As the user picks up the handset of the VoIPtelephone 206 (off-hook), a connection is established via the localnetwork 504 between the local IVM client 508 and the VoIP telephone 506.Thereafter, the VoIP telephone 506 forwards the user's speech to the IVMclient 508 for storage into the audio file at the IVM client 508. Theaudio file is finalized by returning the handset its cradle (on-hook) orby pressing a designated button on the keypad associated with the VoIPtelephone 506, which transmits the stop signal to the IVM client 508.Returning the handset to its cradle preferably generates a send signalto the IVM client 508. The IVM client thereafter transmits the recordedaudio file (instant voice message) to the global IVM server system 502for delivery to the selected one or more IVM recipients. Alternatively,the user may press a key on the input device associated with the IVMclient 508 to initiate the send signal. In response to the send signal,the IVM client 508 sends the recorded audio file to the global IVMserver system 502 for delivery to the selected one or more IVMrecipients. The global IVM server system 502 thereafter transmits theinstant voice message to the local IVM server 202 for delivery selectedone or more recipients (e.g., local IVM clients 206 and 208) via thelocal IP network 204. As before, the one or more recipients are enabledto display an indication that the instant voice message has beenreceived and audibly play the instant voice message. If a recipient IVMclient is not currently connected to the local IVM server 202, the localIVM server 202 temporarily saves the instant voice message and deliversit to the IVM client when the IVM client connects to the local IVMserver 202.

Lastly with reference to FIG. 5, in addition to the “record mode” ofinstant voice messaging as described above, the instant voice messagingsystem 500 also supports an “intercom mode” of the instant voicemessaging. The “intercom mode” represents real-time instant voicemessaging. In the “intercom mode,” instead of creating an audio file asdescribed hereinabove, one or more buffers (not shown) of apredetermined size are generated. The buffers may be generated in anyone of the IVM clients 206, 208, 506 and 508, depending on how theglobal IVM system 500 is defined. The one or more buffers are used toautomatically write successive portions of the instant voice message.Once a first buffer is full, i.e., input audio of the predetermined sizeis written to the buffer, the content of the first buffer isautomatically transmitted. If the transmission is generated at a localIVM client 206, 208 and destined for one or more local IVM recipients,the content of the first buffer is transmitted to the local IVM server202 for delivery to the local one or more recipients. If thetransmission is generated at a local IVM client 206, 208 and destinedfor one or more global IVM recipients 506, 508, the content of the firstbuffer is transmitted to the global IVM server system 502 for deliveryto the one or more global recipients. In addition, if the transmissionis generated at a global IVM client 506, 508 and destined for the otherglobal IVM clients, the content of the first buffer is transmitted tothe global IVM server system 502, such as for example clients 506, 508.Lastly, if the transmission is generated at a global IVM client 506, 508and destined for the local IVM clients 206, 208, the content of thefirst buffer is transmitted to the global IVM server system 502 andfurther transmitted by the global IVM server 502 to the local IVM server202 for delivery to clients 206, 208 within the local IVM system 510. Asecond buffer is meanwhile written with the next successive portion ofinput audio. Once, the second buffer is full, i.e., input audio of thepredetermined size is written to the buffer, the content of the secondbuffer is transmitted in similar fashion to the first buffer. If theentire instant voice message or a successive portion thereof (such as alast successive portion in the instant voice message) written to eitherbuffer is smaller the predetermined size, then the buffered content ofless than the predetermined size is automatically transmitted to the IVMserver 202. The foregoing buffering using the first and second buffersis repeated until the entire instant voice message has been transmittedas described above. It is noted that the invention is not limited to aparticular number of buffers. The foregoing buffering and transmissionallows a “real-time” instant voice message to be transmitted to the oneor more local, as well as global, IVM recipients. The “intercom mode”may be designated as a default mode when an IVM recipient is on-line,while the “record mode” may be designated as a default if the IVMrecipient is unavailable, i.e., not on-line. The user may easily changethe “intercom mode” to the “record mode” on the respective IVM client206, 208, 506, 508. Finally, the audio contents of the buffers may besignal processed (for clarity), encrypted and compressed beforetransmission, as was described previously.

FIG. 6 is an exemplary detailed illustration 600 of the global IVMserver system 502 depicted in FIG. 5, according to the presentinvention. More specifically, the local IVM system 510 described in FIG.5 is connected via the IP network (Internet) 102 to the global IVMserver system 502. The global IVM server system 502 comprises an IVMtransport server mesh 602 and an IVM directory server 608. The IVMtransport server mesh 602 comprises a plurality of interconnected IVMtransport servers 604, 606. Although the mesh 602 is depicted as havingtwo IVM transport servers 604, 606, it is to be understood that as manyIVM transport servers as are desired or required for redundancy and loadbalancing may be interconnected in a mesh. The IVM transport servers604, 606 may be centrally located and configured to communicate (i.e.,forward and receive messages) with local IVM clients 206, 208, local IVMserver 202 and global IVM client 506, 508 (not depicted in FIG. 6). Theplurality of IVM transport servers 604, 606 in the IVM transport servermesh 602 permits load balancing and redundancy in the global IVM system500. The directory server 608 maintains a transport server list of allthe IVM transport servers 604, 606 currently connecting to the mesh 602.Each of the IVM transport servers 604, 606 first connects to thedirectory server 608. The directory server 608 informs each of theconnecting IVM transport servers 604, 606 of all the other IVM transportservers currently in the mesh 602 based on an active list (not shown) oftransport servers 604, 606 in the mesh 602. The connecting IVM transportserver then connects to each of the IVM transport servers in thetransport server list, resulting in an interconnected mesh 602 of IVMtransport servers 604, 606. The IVM transport servers 604, 606 and theIVM directory server 608 communicate via messages.

Further with reference to FIG. 6, the IVM transport servers 604, 606connected in the mesh 602 share a database (not shown) of IVM clients,so that each IVM transport server 604, 606 refers to the same clientdatabase. It is preferable that each IVM transport server 604, 606maintains its own copy of the client database, which is mirrored andreplicated conventionally amongst the IVM transport servers 604, 606 inthe mesh 602. The client database may further be replicated to the localIVM server 202. Alternatively, the client database is stored on aseparate file server (not shown) in data communication with the IVMtransport servers 604, 606 over a network (not shown).

FIG. 7 is an exemplary detailed illustration of a transport server 604,606 depicted in FIG. 6, according to the present invention. The IVMtransport server 604, 606 is a general-purpose programmable computercomprising a network interface (not shown) connected to IP network(Internet) 102, a communication platform 702, a message database 712,and a messaging system 714. The communication platform 702 comprises aserver engine 704, which controls a user manager 706, a local servermanager 708, and a storage manager 710. The messaging system 714 and theserver engine 704 communicate via standard inter-process communication.The storage manager 710 handles retrieving, sending, and storing ofmessages, including instant voice messages and attachments thereto,to/from the message database 712. The user manager 706 is responsiblefor creating/maintaining IVM clients 206, 208, 506, 508, identifyingthem and relaying their status to the server engine 704. When an IVMclient communicates an instant voice message within the global IVMsystem 500, the user manager 706 notifies the server engine 704 whetherthe one or more recipients are unavailable, and thereby the instantvoice message is saved in the message database 712. When the one or moreIVM recipients become available, the user manager 706 notifies theserver engine 704, which instructs the storage manager 710 to retrieveany undelivered instant voice messages for the one or more recipientsand delivers the instant voice messages to the designated one or moreIVM recipients. The local server manager 708 is responsible forcreating/maintaining and providing the status of available local IVMservers, such as IVM server 202 in FIG. 2. The availability status ofthe local IVM servers is checked periodically and updated.

FIG. 8 is an exemplary detailed illustration of a directory server 608depicted in FIG. 6, according to the present invention. The directoryserver 608 is a general-purpose programmable computer equipped with anetwork interface (not shown) connected to IP network (Internet) 102, amessaging system 812, and a communication platform 802. Thecommunication platform 802 comprises a server engine 804, which controlsa local server manager 806, a user manager 808, and a transport manager810. The messaging system 812 and the server engine 804 communicate viastandard inter-process communication. The transport manager 810maintains the status of the IVM transport servers 604, 606 in the IVMtransport server mesh 602 within the global IVM system 500 and using aload-balancing mechanism distributes instant voice messages to availabletransport server 604, 606 for routing to the one or more IVM recipients.The user manager 808 is responsible for creating/maintaining IVM clients206, 208, 506, 508, identifying and relaying their status via the serverengine 804 to the IVM transport server 604, 606 to be used. The localserver manager 806 is responsible for creating/maintaining and providingthe status of available local IVM servers, such as IVM server 202 inFIG. 2. The availability status of the local IVM servers is checkedperiodically and updated.

FIG. 9 illustrates an exemplary a global instant voice messaging (IVM)system 900, which comprises a plurality of local IVM systems and aplurality of global IVM clients, according to the present invention. Inthe global IVM system 900, there are depicted a plurality of local IVMsystems 902, 910 connected to the global IP network 102. The internalrepresentation and functionality of each local IVM system 902, 904 isidentical to the local IVM system 510 described with reference to FIG.5. In global IVM system 900 of FIG. 9, there are also depicted aplurality of global IVM clients 918-928 and a global IVM server system502 connected to the global IP network (i.e., Internet) 102. Theinternal representations of the global IVM client 918-928 and the globalIVM server system 502 are identical to the respective IVM client 508(and/or IVM client or 506) and the global IVM server system 502described with reference to FIG. 5. In the local IVM system 902, eachlocal IVM client 206, 208 is enabled to request local IVM recipientsfrom the local IVM server 202 and global IVM recipients from either theglobal IVM server system 502 or the local IVM server 202. For example,the local IVM client 1A 208 displays a list 904 to a user, comprisingboth local and global IVM recipients. More specifically, the list 904enables IVM client 1A to send instant voice messages according to thepresent invention to local IVM clients 1B 208 and 1C 206, global IVMclient C 922 and global IVM client 2A 208 in the local IVM system 910.Similar lists 906-916 are displayed to the users of the respective IVMclients 1B-1C in local IVM system 902, and 2A-2C in local IVM system910. In addition, the global clients A-F 918-928 are enabled to requestIVM recipients from the global IVM server system 502 and display therespective lists of IVM recipients 930-940 on the respective IVM clients918-928.

While the invention has been particularly shown and described withregard to preferred embodiments thereof, it will be understood by thoseskilled in the art that the foregoing and other changes in form anddetails may be made therein without departing from the spirit and scopeof the invention.

1. An instant voice messaging system for delivering instant messagesover a packet-switched network, the system comprising: a clientconnected to the network, the client selecting one or more recipients,generating an instant voice message therefor, and transmitting theselected recipients and the instant voice message therefor over thenetwork; and a server connected to the network, the server receiving theselected recipients and the instant voice message therefor, anddelivering the instant voice message to the selected recipients over thenetwork, the selected recipients enabled to audibly play the instantvoice message, and the server temporarily storing the instant voicemessage if a selected recipient is unavailable and delivering the storedinstant voice message to the selected recipient once the selectedrecipient becomes available.
 2. The instant voice messaging systemaccording to claim 1, wherein the packet-switched network is a localnetwork.
 3. The instant voice messaging system according to claim 1,wherein the packet-switched network is the Internet.
 4. The instantvoice messaging system according to claim 1, wherein the client requestsa list of recipients associated with the client from the server and theserver transmits the list of recipients to the client for selection ofthe one or more recipients.
 5. The instant voice messaging systemaccording to claim 1, wherein the server delivers the instant voicemessage to the selected recipients that are available.
 6. The instantvoice messaging system according to claim 1, wherein the client recordsthe instant voice message in an audio file, transmits the audio file tothe server, and the server delivers the audio file to the selectedrecipients, the selected recipients being enabled to audibly play theaudio file.
 7. The instant voice messaging system according to claim 6,wherein the client signal processes, compresses and encrypts the audiofile, and the selected recipients being enabled to decrypt anddecompress the audio file before audibly playing the audio file.
 8. Theinstant voice messaging system according to claim 1, wherein the clientbuffers each of a plurality of successive portions of the instant voicemessage as the instant message is recorded, and the client transmitseach successive buffered portion to the server for delivery to the tothe selected recipients, the selected recipients being enabled toaudibly playing each successive portion as it is delivered.
 9. Theinstant voice messaging system according to claim 1, wherein the clientis enabled to attach one or more files to the instant voice message andthe selected recipients are enabled to store or display the one or moreattached files.
 10. The instant voice messaging system according toclaim 1, the system further comprising a public switched telephonenetwork (PSTN) telephone connected to the network to provide input audioof the instant voice message to the client.
 11. The instant voicemessaging system according to claim 1, the system further comprising avoice-over-internet-protocol (VoIP) telephone connected to the networkto provide input audio of the instant voice message to the client. 12.An instant voice messaging system for delivering instant messages over apacket-switched network enabling public switched telephone network(PSTN) support, the system comprising: a PSTN telephone connected to thenetwork for providing input audio; a client connected to the network,the client selecting one or more recipients, generating an instant voicemessage therefor using the input audio provided by the PSTN telephone,and transmitting the selected recipients and the instant voice messagetherefor over the network; a server connected to the network, the serverreceiving the selected recipients and the instant voice messagetherefor, and delivering the instant voice message to the selectedrecipients over the network, the selected recipients being enabled toaudibly play the instant voice message, and the server temporarilystoring the instant voice message if a selected recipient is unavailableand delivering the stored instant voice message to the selectedrecipient once the selected recipient becomes available.
 13. An instantvoice messaging system for delivering instant messages over apacket-switched network, the system comprising: avoice-over-internet-protocol (VoIP) telephone connected to the networkfor providing input audio; a client connected to the network, the clientselecting one or more recipients, generating an instant voice messagetherefor using the input audio provided by the VoIP telephone, andtransmitting the selected recipients and the instant voice messagetherefor over the network; a server connected to the network, the serverreceiving the selected recipients and the instant voice messagetherefor, and delivering the instant voice message to the selectedrecipients over the network, the selected recipients being enabled toaudibly play the instant voice message, and the server temporarilystoring the instant voice message if a selected recipient is unavailableand delivering the stored instant voice message to the selectedrecipient once the selected recipient becomes available.
 14. An instantvoice messaging system for delivering instant messages over a pluralityof packet-switched networks, the system comprising: a client connectedto a local network, the client selecting one or more external recipientsconnected to an external network outside the local network, generatingan instant voice message therefor, and transmitting the selectedrecipients and the instant voice message therefor over the local networkand the external network; and a server connected to the externalnetwork, the server receiving the selected recipients and the instantvoice message therefor, and delivering the instant voice message to theselected recipients over the external network, the selected recipientsbeing enabled to audibly play the instant voice message, and the servertemporarily storing the instant voice message if a selected recipient isunavailable and delivering the stored instant voice message to theselected recipient once the selected recipient becomes available. 15.The instant voice messaging system according to claim 14, the clientfurther selects one or more local recipients connected to the localnetwork and transmits the selected local recipients and the instantvoice message therefor over the local network, wherein the systemfurther comprises: a local server connected to the local network, thelocal server receiving the selected local recipients and the instantmessage therefor from the client, and delivering the instant voicemessage to the selected local recipients over the local network, theselected local recipients being enabled to audibly play the instantvoice message.
 16. The instant voice messaging system according to claim14, wherein the local network is a network within an enterprise.
 17. Theinstant voice messaging system according to claim 14, wherein theexternal network is the Internet.
 18. The instant voice messaging systemaccording to claim 14, wherein the client requests a list of recipientsassociated with the client from the server and the server transmits thelist of recipients to the client for selection of the one or morerecipients.
 19. The instant voice messaging system according to claim14, wherein the server delivers the instant voice message to theselected recipients that are available.
 20. The instant voice messagingsystem according to claim 14, wherein the client records the instantvoice message in an audio file, transmits the audio file to the server,and the server delivers the audio file to the selected recipients, theselected recipients being enabled to audibly play the audio file. 21.The instant voice messaging system according to claim 20, wherein theclient signal processes, compresses and encrypts the audio file, and theselected recipients are enabled to decrypt and decompress the audio filebefore audibly playing the audio file.
 22. The instant voice messagingsystem according to claim 14, wherein the client buffers each of aplurality of successive portions of the instant voice message as theinstant message is recorded, and the client transmits each successiveportion to the server for delivery to the selected recipients, theselected recipients being enabled to audibly playing each successiveportion as it is delivered.
 23. The instant voice messaging systemaccording to claim 14, wherein the client is enabled to attach one ormore files to the instant voice message and the selected recipients areenabled to store or display the one or more attached files.
 24. Theinstant voice messaging system according to claim 14, the system furthercomprising a public switched telephone network (PSTN) telephoneconnected to the local network to provide input audio of the instantvoice message to the client.
 25. The instant voice messaging systemaccording to claim 14, the system further comprising avoice-over-internet-protocol (VoIP) telephone connected to the localnetwork to provide input audio of the instant voice message to theclient.
 26. An instant voice messaging system for delivering instantmessages over a plurality of packet-switched networks enabling publicswitched telephone network (PSTN) support, the system comprising: a PSTNtelephone connected to a local network for providing input audio; aclient connected to the local network, the client selecting one or moreexternal recipients connected to an external network outside the localnetwork, generating an instant voice message therefor using the inputaudio provided by the PSTN telephone, and transmitting the selectedrecipients and the instant voice message therefor over the local networkand the external network; a server connected to the external network,the server receiving the selected recipients and the instant voicemessage therefor, and delivering the instant voice message to theselected recipients over the external network, the selected recipientsbeing enabled to audibly play the instant voice message, and the servertemporarily storing the instant voice message if a selected recipient isunavailable and delivering the stored instant voice message to theselected recipient once the selected recipient becomes available.
 27. Aninstant voice messaging system for delivering instant messages over aplurality of packet-switched networks, the system comprising: avoice-over-internet-protocol (VoIP) telephone connected to a localnetwork for providing input audio; a client connected to the localnetwork, the client selecting one or more external recipients connectedto an external network outside the local network, generating an instantvoice message therefor using the input audio provided by the VoIPtelephone, and transmitting the selected recipients and the instantvoice message therefor over the local network and the external network;an server connected to the external network, the external serverreceiving the selected recipients and the instant voice messagetherefor, and delivering the instant voice message to the selectedrecipients over the external network, the selected recipients beingenabled to audibly play the instant voice message, and the servertemporarily storing the instant voice message if a selected recipient isunavailable and delivering the stored instant voice message to theselected recipient once the selected recipient becomes available.
 28. Aninstant voice messaging system for delivering instant messages over aplurality of packet-switched networks, the system comprising: a clientconnected to an external network, the client selecting one or morerecipients connected to a local network, generating an instant voicemessage therefor, and transmitting the selected recipients and theinstant voice message therefor over the external network; and a externalserver system connected to the external network, the external serversystem receiving the selected recipients and the instant voice message,and routing the selected recipients and the instant voice message overthe external network and the local network; a local server connected tothe local network, the local server receiving the selected recipientsand the instant voice message therefor, and delivering the instant voicemessage to the selected recipients over the local network, the selectedrecipients being enabled to audibly play the instant voice message, andthe local server temporarily storing the instant voice message if aselected recipient is unavailable and delivering the stored instantvoice message to the selected recipient once the selected recipientbecomes available.
 29. The instant voice messaging system according toclaim 28, the client further selects one or more external recipientsconnected to the external and transmits the selected external recipientsover the external network to the external server, and the externalserver receives the selected external recipients and delivers theinstant voice message to the selected external recipients over theexternal network, the selected external recipients being enabled toaudibly play the instant voice message.
 30. The instant voice messagingsystem according to claim 28, wherein the local network is a networkwithin an enterprise.
 31. The instant voice messaging system accordingto claim 28, wherein the external network is the Internet.
 32. Theinstant voice messaging system according to claim 28, wherein the clientrequests a list of recipients associated with the client from theexternal server system and the external server system transmits the listof recipients to the client for selection of the one or more recipients.33. The instant voice messaging system according to claim 28, whereinthe local server delivers the instant voice message to the selectedrecipients that are available.
 34. The instant voice messaging systemaccording to claim 28, wherein the client records the instant voicemessage in an audio file, transmits the audio file to the externalserver, the external server system routes the audio file to the localserver, and the local server delivers the audio file to the selectedrecipients, the selected recipients being enabled to audibly play theaudio file.
 35. The instant voice messaging system according to claim34, wherein the client signal processes, compresses and encrypts theaudio file, and the selected recipients are enabled to decrypt anddecompress the audio file before audibly playing the audio file.
 36. Theinstant voice messaging system according to claim 28, wherein the clientbuffers each of a plurality of successive portions of the instant voicemessage as the instant message is recorded, and the client transmitseach successive buffered portion to the external server system, theexternal server system routes each successive portion to the localserver, and the local server delivers each successive portion to the tothe selected recipients, the selected recipients being enabled toaudibly play each successive portion as it is delivered.
 37. The instantvoice messaging system according to claim 28, wherein the client isenabled to attach one or more files to the instant voice message and theselected recipients are enabled to store or display the one or moreattached files.
 38. The instant voice messaging system according toclaim 28, the system further comprising a voice-over-internet-protocol(VoIP) telephone connected to the client via a local network, the clientproviding input audio of the instant voice message to the client via thelocal network.
 39. The instant voice messaging system according to claim28, wherein the external server system comprises: a transport servermesh including a plurality of transport servers for routing instantvoice messages; a directory server for maintaining the transport servermesh and facilitating load-balancing of the instant voice messageswithin the transport server mesh.
 40. A method for instant voicemessaging over a packet-switched network, the method comprising:selecting one or more recipients for instant voice messaging at aclient; generating an instant voice message for the selected recipientsat the client; transmitting the selected recipients and the instantvoice message therefor over the network from the client to a server;receiving the selected recipients and the instant voice message thereforat the server; delivering the instant voice message from the server tothe selected recipients over the network; temporarily storing at theserver the instant voice message if a selected recipient is unavailable;delivering from the server the stored instant voice message to theselected recipient once the selected recipient becomes available: andaudibly playing the instant voice message at the selected recipients.41. The method for instant voice messaging according to claim 40,wherein the method further comprises: requesting from the client a listof recipients associated with the client from the server; andtransmitting from the server the list of recipients to the client forselection of the one or more recipients.
 42. The method for instantvoice messaging according to claim 40, wherein the method furthercomprises: delivering the instant voice message from the server to theselected recipients that are available.
 43. The method for instant voicemessaging according to claim 40, wherein the method further comprises:recording the instant voice message at the client in an audio file;transmitting the audio file to the server; delivering the audio filefrom the server to the selected recipients; and audibly playing theaudio file at the least one of the selected recipients.
 44. The methodfor instant voice messaging according to claim 43, wherein the methodfurther comprises: signal processing, compressing and encrypting theaudio file at the client; decrypting and decompressing the audio file atthe at least one selected recipient; and audibly playing the decryptedand decompressed audio file at the least one of the selected recipients.45. The method for instant voice messaging according to claim 40,further comprising: buffering each of a plurality of successive portionsof the instant voice message at the client as the instant message isrecorded; transmitting from the client each successive buffered portionto the server; delivering each successive portion from the server to theselected recipients, the selected recipients audibly playing eachsuccessive portion as it is delivered.
 46. The method for instant voicemessaging according to claim 40, wherein the method further comprises:attaching one or more files to the instant voice message at the client;storing or displaying the one or more attached files at the selectedrecipients.
 47. The method for instant voice messaging according toclaim 40, wherein the method further comprises: providing input audio ofthe instant voice message to the client from a public switched telephonenetwork (PSTN) telephone connected to the network.
 48. The method forinstant voice messaging according to claim 40, wherein the methodfurther comprises: providing input audio of the instant voice message tothe client from a voice-over-internet-protocol (VoIP) telephoneconnected to the network.
 49. A method for instant voice messaging overa packet-switched network enabling public switched telephone network(PSTN) support, the method comprising: providing input audio via a PSTNtelephone connected over the network; selecting one or more recipientsfor instant voice messaging at a client; generating an instant voicemessage using the input audio from the PSTN telephone for the selectedrecipients at the client; transmitting the selected recipients and theinstant voice message therefor over the network from the client to aserver; receiving the selected recipients and the instant voice messagetherefor at the server; delivering the instant voice message from theserver to the selected recipients over the network; temporarily storingat the server the instant voice message if a selected recipient isunavailable; delivering from the server the stored instant voice messageto the selected recipient once the selected recipient becomes available;and audibly playing the instant voice message at selected recipients.50. A method for instant voice messaging over a packet-switched network,the method comprising: providing input audio via avoice-over-internet-protocol (VoIP) telephone connected over thenetwork; selecting one or more recipients for instant voice messaging ata client; generating an instant voice message using the input audio fromthe VoIP telephone for the selected recipients at the client;transmitting the selected recipients and the instant voice messagetherefor over the network from the client to a server; receiving theselected recipients and the instant voice message therefor at theserver; delivering the instant voice message from the server to theselected recipients over the network; temporarily storing at the serverthe instant voice message if a selected recipient is unavailable;delivering from the server the stored instant voice message to theselected recipient once the selected recipient becomes available; andaudibly playing the instant voice message at the selected recipients.51. A method for instant voice messaging over a plurality ofpacket-switched networks, the method comprising: selecting one or moreexternal recipients for instant voice messaging at a client connected toa local network, the one or more external recipients connected to anexternal network outside the local network; generating an instant voicemessage for the selected external recipients at the client; transmittingthe selected external recipients and the instant voice message thereforover the local network and the external network; receiving the selectedexternal recipients and the instant voice message therefor at anexternal server connected to the external network; delivering theinstant voice message to the selected external recipients over theexternal network; temporarily storing the instant voice message at theexternal server if a selected recipient is unavailable; delivering thestored instant voice message to the selected recipient once the selectedrecipient becomes available; and audibly playing the instant voicemessage at the selected external recipients.
 52. The method for instantvoice messaging according to claim 51, wherein the method furthercomprises: requesting from the external server a list of externalrecipients associated with the client; and transmitting the list ofexternal recipients from the external server to the client for selectionof the one or more external recipients.
 53. The method for instant voicemessaging according to claim 51, wherein the method further comprises:delivering the instant voice message from the external server to theselected recipients that are available.
 54. The method for instant voicemessaging according to claim 51, wherein the method further comprises:recording the instant voice message in an audio file at the client;transmitting the audio file to the external server; delivering the audiofile to the selected recipients from the external server; and audiblyplaying the audio file at the selected recipients.
 55. The method forinstant voice messaging according to claim 54, wherein the methodfurther comprises: signal processing, compressing and encrypting theaudio file at the client; and decrypting and decompressing the audiofile at the selected recipients; and audibly playing the decrypted anddecompressed audio file at the selected recipients.
 56. The method forinstant voice messaging according to claim 51, wherein the methodfurther comprises: buffering each of a plurality of successive portionsof the instant voice message at the client as the instant message isrecorded; transmitting from the client each successive portion to theexternal server; delivering each successive portion from the externalserver to the selected external recipients, audibly playing eachsuccessive portion at the selected external recipients as it isdelivered.
 57. The method for instant voice messaging according to claim51, wherein the method thither comprises: attaching one or more files tothe instant voice message; storing or displaying the one or moreattached files at the selected external recipients.
 58. The method forinstant voice messaging according to claim 51, wherein the methodfurther comprises providing input audio of the instant voice message tothe client from a public switched telephone network (PSTN) telephoneover the local network.
 59. The method for instant voice messagingaccording to claim 51, wherein the method further comprises providinginput audio of the instant voice message to the client from avoice-over-internet-protocol (VoIP) telephone over the local network.60. A method for instant voice messaging system over a plurality ofpacket-switched networks enabling public switched telephone network(PSTN) support, the method comprising: providing input audio via a PSTNtelephone connected to a local network; selecting one or more externalrecipients for instant voice messaging at a client, the one or moreexternal recipients connected to an external network outside the localnetwork; generating an instant voice message for the one or moreexternal recipients using the input audio provided by the PSTNtelephone; transmitting the selected recipients and the instant voicemessage therefor over the local network and the external network;receiving the selected recipients and the instant voice message thereforat a server connected to the external network; delivering the instantvoice message to the selected recipients from the server over theexternal network; temporarily storing at the server the instant voicemessage if a selected recipient is unavailable; delivering from theserver the stored instant voice message to the selected recipient oncethe selected recipient becomes available; and audibly playing theinstant voice message at the selected recipients.
 61. A method forinstant voice messaging system over a plurality of packet-switchednetworks, the method comprising; providing input audio via avoice-over-internet-protocol (VoIP) telephone connected to a localnetwork; selecting one or more external recipients for instant voicemessaging at a client, the one or more external recipients connected toan external network outside the local network; generating an instantvoice message for the one or more external recipients using the inputaudio provided by the VoIP telephone; transmitting the selectedrecipients and the instant voice message therefor over the local networkand the external network; receiving the selected recipients and theinstant voice message therefor at a server connected to the externalnetwork; delivering the instant voice message to the selected recipientsfrom the server over the external network; temporarily storing at theserver the instant voice message if a selected recipient is unavailable;delivering from the server the stored instant voice message to theselected recipient once the selected recipient becomes available; andaudibly playing the instant voice message at the selected recipients.62. A method for instant voice messaging over a plurality of a pluralityof packet-switched networks, the method comprising: selecting one ormore recipients connected to a local network at a client connected to anexternal network; generating an instant voice message for the selectedrecipients at the client; transmitting the selected recipients and theinstant voice message therefor over the external network from the clientto an external server system; receiving the selected recipients and theinstant voice message at the external server system; routing theselected recipients and the instant voice message over the externalnetwork and the local network; receiving the selected recipients and theinstant voice message therefor at a local server connected to the localnetwork; delivering the instant voice message to the selected recipientsover the local network; temporarily storing the instant voice message atthe local server if a selected recipient is unavailable; delivering thestored instant voice message to the selected recipient once the selectedrecipient becomes available; and audibly playing the instant voicemessage at the selected recipients.
 63. The method for instant voicemessaging according to claim 62, wherein the method further comprises:requesting a list of recipients associated with the client from theexternal server system; and transmitting the list of recipients from theexternal server system to the client for selection of the one or morerecipients.
 64. The method for instant voice messaging according toclaim 62, wherein the method further comprises: delivering the instantvoice message from the local server to the selected recipients that areavailable.
 65. The method for instant voice messaging according to claim62, wherein the method further comprises: recording the instant voicemessage in an audio file at the client; transmitting the audio file fromthe client to the external server system; routing the audio file fromthe external server system to the local server; and delivering the audiofile from the local server to the selected recipients; and audiblyplaying the audio file at the selected recipients.
 66. The method forinstant voice messaging according to claim 65, wherein the methodfurther comprises: signal processing, compressing and encrypting theaudio file at the client; decrypting and decompressing the audio file atthe selected recipients; audibly playing the decrypted and decompressedaudio file at the selected recipients.
 67. The method for instant voicemessaging according to claim 62, wherein the method further comprises:buffering each of a plurality of successive portions of the instantvoice message at the client as the instant message is recorded;transmitting from the client each successive portion to the externalserver system; routing each successive portion from the external serversystem to the local server; delivering each successive portion fromlocal server to the selected external recipients; and audibly playingeach successive portion at the selected recipients as it is delivered.68. The method for instant voice messaging according to claim 62,wherein the method further comprises: attaching one or more files to theinstant voice message at the client; storing or displaying the one ormore attached files at the selected recipients.
 69. The method forinstant voice messaging according to claim 62, wherein the methodfurther comprises: providing input audio of the instant voice messagefrom a voice-over-internet-protocol (VoIP) telephone to the client via alocal network connecting the VoIP telephone to the client.
 70. Themethod for instant voice messaging according to claim 62, wherein themethod further comprises; maintaining a transport server mesh includinga plurality of transport servers for routing instant voice messages; andload-balancing the instant voice messages within the transport servermesh.